Method in the synchronization of a receiver, and a receiver

ABSTRACT

In a method f or synchronizing a receiver with a signal modulated with a spreading code the frequency shift of the transmitted signal and the symbol acquisition of the data transmission are determined. In the method, a guessed data is generated, and the received signal is multiplied with at least two different values of said guessed data, to form spectrum results. The spectrum results formed with said different guessed data are used to determine the frequency shift.

FIELD OF THE INVENTION

The present invention relates to a method for synchronizing a receiverwith a signal modulated with a spreading code, in which method thefrequency shift of the transmitted signal and the symbol acquisition ofthe data transmission are determined. The invention also relates to areceiver comprising acquisition means for acquisition of a signalmodulated with a spreading code, and determining means for determiningthe frequency shift of the signal and the symbol acquisition of the datatransmission. The invention yet relates to a wireless communicationdevice comprising at least one receiver which comprises acquisitionmeans for acquisition of a signal modulated with a spreading code, anddetermining means for determining the frequency shift of the signal andthe symbol acquisition of the data transmission.

BACKGROUND OF THE INVENTION

In positioning methods based on satellites, the positioning receiverattempts to receive a signal transmitted by the satellites. The signalcontains phase-modulated information, such as the orbit parameters ofthe satellites. In practical situations, however, the signal strength inthe positioning receiver may be so weak, particularly indoors, thatacquisition of the signal is difficult. In particular, acquisition of acarrier wave modulated with a spreading code is complicated by 50 bpsdata transmission when operating at such signal levels on which datareception is impossible (and when the data must be obtained e.g. via amobile communication network).

One known positioning system is the GPS system (Global PositioningSystem) comprising more than 30 satellites, of which normally a maximumof 12 are simultaneously within the sight of a receiver. Thesesatellites transmit e.g. satellite orbit data (Ephemeris data) as wellas data on the time of the satellite. A receiver to be used inpositioning normally determines its position by computing thepropagation time of a signal transmitted substantially simultaneouslyfrom several satellites belonging to the positioning system to thereceiver. For positioning, the receiver must typically receive thesignals of at least four satellites within sight, to be able to computethe position.

Each satellite operating in the GPS system transmits a ranging signal ata carrier frequency of 1575.42 MHz called L1. This frequency is alsoindicated with 154f₀, where f₀=10.23 MHz. Furthermore, the satellitestransmit another ranging signal at a carrier frequency of 1227.6 MHzcalled L2, i.e. 120f₀. In the satellite, the modulation of these signalsis performed with at least one pseudo sequence. This pseudo sequence isdifferent for each satellite. As a result of modulation, acode-modulated wideband signal is generated. The modulation techniqueused in the receiver makes it possible to distinguish between thesignals transmitted by different satellites, although the carrierfrequencies used in the transmission are substantially the same. Thismodulation technique is called code division multiple access (CDMA). Ineach satellite, for modulating the L1 signal, the pseudo sequence usedis e.g. a so-called C/A code (Coarse/Acquisition code), which is a codefrom the family of the Gold codes. Each GPS satellite transmits a signalby using an individual C/A code. The codes are formed as a modulo-2 sumof two 1023-bit binary sequences. The first binary sequence G1 is formedwith a polynome X¹⁰+X³+1, and the second binary sequence G2 is formed bydelaying the polynome X¹⁰+X⁹+X⁸+X⁶+X³+X²+1 in such a way that the delayis different for each satellite. This arrangement makes it possible togenerate different C/A codes by using identical code generators. The C/Acodes are thus binary codes whose chipping rate in the GPS system is1.023 MHz. The C/A code comprises 1023 chips, wherein the repetitioninterval (epoch) of the code is 1 ms. The carrier of the L1 signal isfurther modulated by navigation information at a bit rate of 50 bit/s.The navigation information comprises information about the “health” andorbit of the satellite, parameters related to the local clock of thesatellite, etc. In satellites of the GPS system, e.g. so-called atomicclocks are used as the local clock.

During their operation, the satellites monitor the condition of theirequipment. The satellites may use for example so-called watch-dogoperations to detect and report possible faults in the equipment. Theerrors and malfunctions can be instantaneous or longer lasting. On thebasis of the health data, some of the faults can possibly be compensatedfor, or the information transmitted by a malfunctioning satellite can betotally disregarded. Furthermore, in a situation in which signals ofmore than four satellites can be received, the information received fromdifferent satellites can be weighted differently on the basis of thehealth data. Thus, it is possible to minimize the effect of errors onmeasurements, possibly caused by satellites which seem unreliable.

To detect the signals of the satellites and to identify the satellites,the receiver must perform acquisition, whereby the receiver searches forthe signal of each satellite at the time and attempts to acquire thissignal so that the signal propagation times can be measured and the datatransmitted with the signal can be received and demodulated.

In receivers of prior art, the time taken for this acquisition depends,for example, on the strength of the received signal. Typically, theweaker the received signal is, the longer an integration must be carriedout in each element of the space to be searched (correlation/frequency),to detect a possible signal. Typically, in prior art GPS receiversdesigned for outdoor use, the acquisition of satellite signals takessome tens of seconds or a few minutes, if the received signal strengthis relatively high, in the order of −120 to −130 dBm. However, in asituation of positioning indoors or in such a place where the receivedsignal is attenuated, for example, by the effect of buildings or otherobstacles in the terrain, the acquisition time is considerablyprolonged.

In the GPS system, the satellites transmit a spread spectrum modulatedsignal which is generated with an individual spreading code in eachsatellite. Thus, the receiver attempts to be synchronized with thetransmitted signal, i.e., the receiver attempts to determine the codephase and Doppler shift of the signal. In practice, the Doppler shiftcan be in the order of ±6 kHz. In a corresponding manner, the length ofthe code used in the modulation is 1023 chips, wherein 1023 differentalternatives must be scanned to find out the correct code phase. Thus,scanning through the whole two-dimensional search space takes a longtime. Furthermore, the determination of the correlation maximum iscomplicated by the fact that the spread spectrum modulated signal isstill modulated with a data signal of 50 baud. Due to the effect of theunknown data modulation, the inaccuracy of the frequency estimate isseveral tens of hertzes, and the measurement result is thus not directlysuitable to be used as an initialization for the carrier wave trackingphase locked loop.

Consequently, in this description, the spreading code refers to a codewith which the carrier wave is modulated.

The positioning receiver must perform the acquisition e.g. when thereceiver is turned on and also in a situation in which the receiver hasnot been capable of receiving the signal of any satellite for a longtime. Such a situation can easily occur e.g. in portable devices,because the device is moving and the antenna of the device is not alwaysin an optimal position in relation to the satellites, which impairs thestrength of the signal coming in the receiver. Also in urban areas,buildings have an effect on the signal to be received.

The positioning arrangement has two primary functions:

-   1. to calculate the pseudo range between the receiver and the    different GPS satellites, and-   2. to determine the position of the receiver by utilizing the    calculated pseudo ranges and the position data of the satellites.    The position data of the satellites at each time can be calculated    on the basis of the Ephemeris and time correction data received from    the satellites or via the mobile communication network.

Distances to the satellites are called pseudo ranges, because the timeis not accurately known in the receiver from the beginning. Thus, thedeterminations of position and time are iterated until a sufficientaccuracy is achieved with respect to time and position. Because the timeis not known with absolute precision, the position and the time must bedetermined by iteratively solving a linearized set of equations havingx,y,z and time as unknowns.

The pseudo range can be computed by measuring the pseudo transmissiontime delays between the signals of the different satellites.

Almost all known GPS receivers utilize correlation methods for computingthe distances. In a positioning receiver, pseudo sequences of differentsatellites are stored or generated locally. A received signal issubjected to conversion to an intermediate frequency (down conversion),whereafter the receiver multiplies the received signal with the storedpseudo sequence. The signal obtained as a result of the multiplicationis integrated or low-pass filtered. The presence of the satellite signalcan be determined on the basis of this filtered or integrated signal.

The above-mentioned acquisition and frequency control process must beiterated for each signal of a satellite received in the receiver.Consequently, this process takes a lot of time, particularly in asituation, in which the signals to be received are weak. To speed upthis process, some prior art receivers use several correlators, whereinit is possible to search for several correlation peaks simultaneously.In practical solutions, the process of acquisition and frequency controlcannot be accelerated very much solely by increasing the number ofcorrelators, because the number of correlators cannot be increasedinfinitely.

In some prior art GPS receivers, thee FFT technique has been used inconnection with conventional correlators to determine the Doppler shiftof the received GPS signal. These receivers use the correlation torestrict the bandwidth of the received signal to 10 to 30 kHz. Thisnarrow-band signal is analysed with FFT algorithms to determine thecarrier frequency.

International patent application WO 97/14057 presents a GPS receiver anda method for processing GPS signals. The receiver presented in thisreference comprises primarily two separate receivers, of which the firstreceiver is intended for use in a situation in which the received signalstrength is sufficiently high, and the second receiver is intended foruse in a situation in which the received signal strength is notsufficient for sufficiently accurate positioning by using the firstreceiver. In this second receiver, the received signal is digitized andstored in memory means, wherein these stored signals are later used in adigital signal processor. The digital signal processor performsconvolution operations on the received digitized signal. The aim ofthese convolution operations is to calculate the pseudo distances.Typically, 100 to 100 epochs (PM frames) are stored in the memory means,corresponding to a signal with the length of 100 ms to 1 s. After this,the stored code corresponding to the code of the satellite underexamination is retrieved from the memory of the receiver for use in theanalysis of the received signal.

Also the Doppler shift is removed in the receiver. The extent of thisDoppler shift is determined either in the first receiver or on the basisof data received from a base station belonging to the GPS system. Thisis followed by coherent summing of sequential frames. This data obtainedas a result of the summing is subjected to fast Fourier transform. TheFourier transform result is multiplied by the complex conjugate of theFourier transform of the reference signal stored in the memory means.This product of the multiplication is further subjected to inverseFourier transform, producing a set of correlation results. Consequently,in this reference, the correlation is replaced by the Fourier transform,thereby reducing the number of arithmetical operations. According to thereference, the method accelerates the positioning 10 to 100 timescompared with the solutions known at the time of filing of saidpublication.

SUMMARY OF THE INVENTION

It is an aim of the present invention to provide a method forsynchronizing a receiver with a spread spectrum modulated signal, toaccelerate acquisition of the phase of the carrier wave. The inventionis based on the idea that the spectrum widening due to the unknown datamodulation can be cancelled out by guessing the original data. When thedata in values of 1 and −1 is multiplied with the successfully guessed,i.e. the same data, the effect of the data on the signal is cancelled.(1×1=1 and −1×−1=1). This is preferably performed by trying all thepossible bit combinations, if necessary, with data bit patterns ofcertain length, and furthermore, with different phases of the data bitpatterns, until achieving as high and narrow a spectrum peak aspossible. Thus, the effect of the data modulation is eliminated, and amore accurate frequency estimation is possible. More precisely, themethod according to the present invention is primarily characterized inthat in the method, guessed data is formed, and the received signal ismultiplied with at least two different values of said guessed data toform spectrum results, wherein the frequency shift is determined on thebasis of the spectrum results formed with said different guessed data.The receiver according to the present invention is primarilycharacterized in that the receiver also comprises means for generatingguessed data, means for multiplying the received signal with at leasttwo different values of said guessed data to form spectrum results, andmeans for determining the frequency shift on the basis of the spectrumresults formed with said different guessed data. Further, a wirelesscommunication device according to the present invention is primarilycharacterized in that the wireless communication device also comprisesmeans for generating a guessed data, means for multiplying the receivedsignal by at least two different values of said guessed data to formspectrum results, and determining means for determining the frequencyshift on the basis of the spectrum results formed with said differentguessed data.

The present invention shows remarkable advantages compared to solutionsof prior art. When applying the method according to the invention, theacquisition of the phase of the carrier of the satellites by thereceiver can be considerably speeded up. Thus, also the positioning canbe performed faster. By the method according to the invention, it isalso possible to reduce the total energy consumption of the receiver,which is significant particularly in portable devices. This is based onthe fact that the time taken to the phase acquisition is shorter.

DESCRIPTION OF THE DRAWINGS

In the following, the invention will be described in more detail withreference to the appended drawings, in which

FIG. 1 shows a receiver according to a preferred embodiment of theinvention in a reduced block chart,

FIG. 2 shows a precision acquisition block in a receiver according to apreferred embodiment of the invention in a reduced block chart,

FIG. 3 illustrates the generation of an output signal from an integratorin a reduced view,

FIG. 4 a shows, as an example, data guesses formed by the methodaccording to the invention,

FIG. 4 b shows, as an example, spectra resulting from the data guessesof FIG. 4 a, and

FIG. 5 shows an electronic device according to a preferred embodiment ofthe invention in a reduced block chart.

DETAILED DESCRIPTION OF THE INVENTION

In the following, the invention will be described by using the GPSsystem and a GPS receiver as examples of a positioning system and apositioning receiver, respectively, but it is obvious that the presentinvention can also be applied in connection with other positioningsystems and communication systems, in which the aim is to acquire atransmitted signal in a receiver.

In a receiver 1 according to a preferred embodiment of the invention,shown in FIG. 1, the received signal is preferably converted to anintermediate frequency in a converter block 2. At this stage, the signalcomprises two components, known as such: the I and Q components, with aphase difference of 90° therebetween. These analog signal componentsconverted to an intermediate frequency are digitized in a digitizationblock 3 and led to a first multiplier block 4. In the first multiplierblock 4, the I and Q components of the digitized signal are multipliedby a signal generated by a numerically controlled oscillator (NCO) 5.This signal of the numerically controlled oscillator 5 is intended tocorrect the frequency deviation caused by the Doppler shift and thefrequency error of the local oscillator (not shown) of the receiver 1.In this preferred embodiment of the invention, the signal generated bythe first multiplier block 4 is led to an acquisition block 6. The aimof this acquisition block 6 is thus to find the code phase of thesatellite and at least a rough frequency deviation, which is followed bya second acquisition step in the method according to the invention. Alsothis will be described below in this description. During theacquisition, a control block 7 is used to control a scanning block 8, bymeans of which the frequency of the numerically controlled oscillator 5is adjusted, if necessary. The control block 7 controls a selectionblock 9 to couple this signal formed by the scanning block 8, duringthis acquisition step, to the numerically controlled oscillator 5, thecontrol signal formed by a precision acquisition block 33 during thesecond acquisition step to the numerically controlled oscillator 5, orthe control signal formed by the loop filter 11 to the numericallycontrolled oscillator 5, after the acquisition has been made.Preferably, the precision acquisition block 33 is used to control theoperation of this loop filter 11. This loop filter 11 forms a part ofthe code phase locked loop, known as such, and the carrier phase lockedloop. In the second multiplier block 35, the received signal and thereference code are multiplied. The signal output from the secondmultiplier block 35 is led to an integrator 36. The signal output fromthe integrator 36 is further led to a precision acquisition block 33.

FIG. 2 shows, in a reduced block chart, the structure of the precisionacquisition block 33 of the receiver according to a preferred embodimentof the invention. It preferably comprises an optional block 38, memorymeans 39, a guessed data block 40, a second multiplier block 41, aspectrum analysis block 42, a search block 43, and an iteration block44. The structure of this precision acquisition block 33 will bedescribed in more detail further below in this description.

For applying the present invention, the receiver 1 must first determinethe code phase and the rough carrier frequency. This can be performed bya method known as such or, for example, in the following way.

After turning on the operating voltages, or in a situation in which thereceiver 1 has not been capable of receiving the signal of GPSsatellites for a long time, the receiver 1 performs a two-dimensionalsearching step for each satellite whose signal is to be received. Inthis two-dimensional searching step, the aim is to determine the carrierfrequency and code phase for each satellite. The carrier frequency isthus affected by the Doppler shift caused by the movement of thesatellite, as well as by inaccuracies in the local oscillator of thereceiver. The frequency uncertainty may be relatively high, even ±6 kHz,wherein the receiver 1 must scan a frequency range of about 12 kHz inrelation to the actual transmission frequency (L1=1575.42 MHz).Moreover, the receiver 1 does not know the precise code phase, whereinthe receiver must also determine the code phase from 1023 possible codephases. This will result in a two-dimensional search process, in whichone dimension is the frequency deviation in the range of 12 kHz and thesecond dimension is the code phase from 1023 different code phases. Inthe method according to a preferred embodiment of the invention, it ispossible to scan a frequency range of about 500 Hz at a time, whereinthe method is iterated, if necessary, 24 times to cover the wholefrequency range of 12 kHz to be scanned. It is obvious that the examplevalues in this description are only used to clarify the invention, butnot as restricting examples. The invention can also be applied insystems other than GPS systems, wherein e.g. said frequency values, codephases and the number of codes may vary.

The following is a description of the operation of the method accordingto a preferred embodiment of the invention in a receiver 1 as shown inFIG. 1. To begin with, a first acquisition step is taken to determinethe frequency deviation and the code phase in such a way that thefrequency accuracy is in the order of some tens of hertzes and thepossible phase error is preferably smaller than the length of one chip.This first acquisition step is described in more detail in a previousFinnish patent application FI-19992653 by the applicant, which isincorporated herein by reference. To start the acquisition, the scanningblock 8 sets the frequency of the numerically controlled oscillator 5 sothat the receiver 1 preferably receives the lowest frequencies in thefrequency range, in this example from 1575.414 MHz to 1575.4145 MHz. Thereceiver may also determine the starting frequency so that the receiverutilizes e.g. previously determined position data and/or almanac data,wherein the positioning can be further accelerated. Samples of thereceived signal are preferably stored as complex sample vectors whicheach comprise 1023 samples in this preferred embodiment. The frequencyof storing the samples in this preferred embodiment is substantially thesame as the chipping rate, i.e. about 1,023,000 samples per second. Thesample vectors are continuous so that the next sample vector continues,in time, after the previous sample vector, i.e. the time differencebetween the last sample of a sample vector and the first sample of thenext sample vector is substantially the same as the time differencebetween successive samples in the sample vector. Thus, these 1023samples represent a signal with the length of about 1 ms, wherein in thetime-to-frequency conversion, the frequency range is about 1 kHz, ofwhich a part can be utilized.

The number of sample vectors is preferably N, in which N is preferably apower of two. Furthermore, the formation of sample vectors is iterated Ktimes in the preferred embodiment of the invention. When determining thevalue of the number N of the sample vectors in the GPS system, one musttake into account that the signal contains information modulated at abit rate of 50 bits/s by binary phase modulation. Another factorlimiting this number N of sample vectors is the frequency stability ofthe local oscillator of the receiver.

In addition to the step of forming the sample vectors, in theacquisition method according to the invention, a correlation step istaken to form a correlation function matrix.

This correlation step can be taken partly already during the sampling,or after the formation of N number of sample vectors. If the correlationstep is taken e.g. so that, after the storage of each sample vector, atime-to-frequency conversion is computed for it, such as a fast Fouriertransform (FFT), the same time-to-frequency converter can be used forall N sample vectors. However, if the correlation step is taken afterthe storage of the N sample vectors, either a separate time-to-frequencyconverter must be used for each sample vector, or the time-to-frequencyconversions are performed for the different sample vectors one after theother in the same time-to-frequency converter. In this description, theFourier transform and the inverse Fourier transform are primarily usedas examples of the time-to-frequency conversion and the inverseconversion, i.e. frequency-to-time conversion, respectively; however, itis obvious that the present invention is not limited solely to theseexamples.

Each sample vector is subjected to discrete Fourier transform 102,preferably fast Fourier transform (FFT). In arithmetic operations inpractice, preferably 1024 values are used, because the discrete Fouriertransform can thus be implemented in a considerably more efficient wayin practical applications (with the FFT algorithm) than when using 1023values. One way of providing this is to add an extra zero to 1024elements, or to take the samples so that the complex sample vectors have1024 samples instead of 1023 samples, the sampling time being, however,substantially the same. This has a minor effect on the transform result.

The receiver preferably contains the stored reference codes r(x)corresponding to the C/A codes for all the satellites (not shown) in theGPS system, wherein x refers to the satellite index, for example xranges from 1 to 36. The reference codes do not necessarily need to bestored but they can also be generated in the receiver. At thecorrelation stage, the reference code of the satellite which transmittedthe signal to be acquired by the receiver is selected or generated. Thereference code is preferably inverted in time. This inverse referencecode is subjected to discrete Fourier transform, preferably fast Fouriertransform. The inverse reference code and/or its fast Fourier transformmay already have been stored in advance in the memory means of thereceiver, or it is formed from the reference code r(x) in connectionwith the acquisition.

In the next correlation step, the Fourier transform result of eachsample vector is multiplied with the Fourier transform result of theinverse reference code. These products of the multiplications arefurther subjected to inverse Fourier transform, wherein the result is across correlation of the reference code r(x) and the received signalwith all possible integer delays (1023). This is based on the fact thatthe Fourier transform of the convolution of the signals in the timedomain corresponds to the multiplication of the Fourier transformedsignals, i.e. signals of the time domain converted to the frequencydomain. As also the inverse reference code is used, the Fouriertransform can be used to perform a fast correlation in discrete time.Thus, in this preferred example, the cross correlation result comprises1023 elements. These cross-correlation results formed of differentsample vectors are compiled to a correlation function matrix, in whichthe number of rows is the number N of the sample vectors.

It is obvious that, instead of inversion of the reference code in time,inverse sample vectors can be formed of the sample vectors, wherein thereference code r(x) is used directly and inverse sample vectors are usedin the above-presented arithmetic operations. In an advantageousembodiment, neither of the above-mentioned inversions needs to be made,that is, the reference code r(x) and the sample vectors can be used assuch. This is based on utilizing the property of the correlation theoremwhich indicates that the cross-correlation corr(z₁, Z₂) between two timediscrete functions z₁, Z₂ can be formed by means of a time-to-frequencyconversion of the functions converted to the frequency domain.

In this context, it should be pointed out that the method presented inthe preceding paragraph for calculating the cross-correlation betweenthe sample vectors and the reference code r(x) is due to the basicproperties of the correlation and the convolution as well as their closedependence, wherein the inversion of the function in the time domainhas, practically, a mathematical correlation to the formation of thecomplex conjugate in the frequency domain. It should also be pointed outthat in view of applying the present invention as a whole, the methodused for producing the cross-correlation result is not significant assuch.

The rows in the correlation function matrix formed in the correlationstep represent the cross-correlation of the received signal and thereference code with various phase differences taken at intervals of onemillisecond. In the next step, the transposition of the correlationfunction matrix is used, in which the rows represent the signal samplesin the time domain in the same way as in a correlator according to theprior art. Each row corresponds to a specific code phase differencebetween the received signal and the reference code. Each row of thetransposition of this correlation function matrix is subjected to theFourier transform to form a search matrix, wherein a frequency analysiscan be performed to determine the real frequency shift.

In practical applications, a separate transposition matrix does not needto be formed from the correlation function matrix, but the elements ofthe stored correlation function matrix are read from a memory 16 (FIG.5) in a different direction, preferably in columns.

The correlation function matrix can also be formed e.g. by using matchedfilters, known as such.

However, as stated above, the signal is modulated in the GPS system witha signal of 50 bit/s, which may restrict the value of the number N inpractical applications. Thus, the number N must be selected preferablyso that the modulation will not substantially affect the analysis.Furthermore, the optimum N value is affected by the window function usedin the Fourier transform. By selecting e.g. N=32 as the numerical value,the width of the noise band obtained for the receiver is in the order of30 Hz, which is still slightly too high for demodulating signals whosestrength is in the order of −150 dBm in the receiver. For this reason,the acquisition block 6 still comprises an optional incoherent summingstep to improve the signal-noise ratio.

To implement the incoherent summing step, the above-presented steps ofsample vector formation, correlation and analysis are iterated K times.This number K of iterations is preferably selected so that thesignal-noise ratio can be improved to a sufficient degree but within areasonable time. At each time of performing the analysis, one coherentsearch matrix is formed, for which the incoherent summing is performedto form an incoherent search matrix. The incoherent search matrix ispreferably formed in the following way. From the complex elements ofeach coherent search matrix, preferably the magnitude (absolute value)or another numerical value is calculated, such as the second power ofthe magnitude of the element. The numerical values calculated from thecorresponding elements of the incoherent search matrix are summed up,i.e. the matrices are summed up.

In practical solutions, the incoherent search matrix can be formed in atleast two ways. In the first implementation alternative, the coherentsearch matrix formed at each iteration time is stored. After thenecessary iterations, the incoherent search matrix is formed by summingup the corresponding elements according to Formula 8. In thisimplementation alternative, a memory is needed for storing all theelements of the coherent search matrices. According to the secondimplementation alternative, one coherent search matrix is firstcalculated, whose values are copied as elements of the sum matrix. Eachnext iteration time, a coherent search matrix is formed, whose valuesare added to the corresponding elements in the incoherent search matrix.In this alternative, the summation of the corresponding elements is thusperformed each iteration time. Thus, only one coherent search matrix isstored, wherein less memory space is required than in the firstalternative.

The necessary iterations are followed by an analysis step to examine thevalues of the elements of this incoherent search matrix and to find avalue which exceeds a predetermined threshold value and is clearlyhigher than the other values. If such a value is found, it indicates thecode phase difference as well as the frequency deviation in the firstacquisition step with a desired accuracy, because it is probably asignal transmitted by a satellite. If the signal is not transmitted by asatellite but noise or another spurious signal, no significantcorrelation peaks should occur. The code phase difference and thefrequency difference are manifested by the line index and the columnindex of this highest value, respectively. However, if no such value isfound in the incoherent search matrix, i.e. a signal transmitted by thesearched satellite was probably not received in the frequency rangeunder examination, the frequency band under examination is changed andthe above-presented steps are taken to form an incoherent search matrix.By this method, the whole range of 6 kHz under examination can bescanned by iterating the above-presented steps a sufficient number oftimes.

If necessary, the above-presented steps can be iterated for the wholefrequency band under examination, storing the incoherent search matricesformed at the different iteration times, or only the possible peaks,before searching for the highest correlation peak. In this way, thepossibility of misinterpretations can be reduced e.g. in such asituation in which the threshold value is set too low and a spurioussignal can cause a misinterpretation.

The steps of finding a signal of a satellite in the acquisition block 6and determining the code phase and an approximate frequency deviationare followed by the second acquisition step applying the method of theinvention. In this second acquisition step, the aim is to furtherimprove the accuracy of the frequency deviation estimate. For thispurpose, the control block 7 sets the precision acquisition block 33 tofine-tune the frequency and the code phase. On the basis of the resultsof the first acquisition step in the acquisition block 6, the controlblock 7 sets the numerically controlled oscillator 5 to the valueindicated by the determined frequency deviation. Furthermore, thereference code corresponding to the code used by the satellite is set inthe reference code generator 34. On the basis of the code phase datadetermined in the acquisition block 6, the code phase of the referencecode is set correct. After this, the signal transmitted by the satelliteis received and led not only to the first conversion block 2, thedigitizing block 3 and the first multiplier block 4, but also to asecond multiplier block 35. In the second multiplier block, the receivedsignal is multiplied with the reference code, wherein the output of thesecond multiplier block 35 contains information modulated in the signaltransmitted by the satellite, if the frequency and the code phase arecorrect. For fine-tuning of the frequency and the code phase, the signaloutput from the second multiplier block 35 is led to an integrator 36.In this embodiment, the signal formed in the second multiplier block 35is integrated in the integrator 36 for a maximum time of one data bit,which is about 20 ms in the GPS system. Consequently, it is a so-calledintegrate-and-dump type filtering. This output signal is further led tothe precision acquisition block 33, which, if necessary, performs signaldecimation in the optional block 38. The purpose of this decimation isto reduce the quantity of data to be stored in the second acquisitionstep. The integrator signal or the decimated integrator signal is led tomemory means 39 for storage. A certain number of samples taken of thesignal are stored in the memory means 39, after which a data modulationis performed for a more precise determination of the frequency deviationand the clock phase.

The data modulation is preferably performed in the following way. Aguessed data block 40 forms the guessed data (bit pattern) to be used inthe acquisition and sets its phase. In this example, it is assumed thatthe length of the guessed data is selected to be four bits, but inpractical applications, the length of the guessed data can be longer orshorter than said four bits. Preferably, the length of the guessed dataranges from six to twelve bits. Furthermore, it is assumed that fourdifferent clock phases are examined, but in practice, the number ofclock phases to be examined may vary, and preferably it ranges from fourto six phases. Thus, in this description, the number of combinations ofa bit pattern and a clock phase to be examined is sixteen, and inpractical applications, with the above-presented numerical values, itpreferably ranges from 256 to 1536 different combinations. Naturally,this number of combinations may be even higher, particularly if theprocessing capacity of the receiver is sufficient to perform therequired arithmetic operations in such a way that the correct code phasecan be determined sufficiently fast, preferably in a few hundredmilliseconds. After setting the first alternative bit pattern, e.g.1111, and the first code phase for the guessed data in the guessed datablock 40, this guessed data and the sample sequence stored in the memory39 are multiplied in the second multiplier block 41. Thus, the output ofthe second multiplier block has a discrete signal in the time domain,which is analysed in a spectrum analyzing block 42. In the spectrumanalyzing block 42, a time-to-frequency conversion is preferablyperformed, such as the discrete Fourier transform (DFT) or fast Fouriertransform (FFT). It is obvious that also other time-to-frequencyconversions can be applied in this context. In the search block 43,peaks are searched in the signal formed by the spectrum analyzing block42, and the highest peak found is preferably stored. Furthermore, fromthe signal formed by the spectrum analyzing block 42, also othervariables can be determined, which represent the properties of thesignal formed by the spectrum analyzing block 42, such as the ratiobetween the highest maximum to the second highest maximum, the number ofmaxima, or corresponding information whereby the signal spectrum can beevaluated and compared. After this, the guessed data block 40 selects,for example, the next clock phase for the guessed data to be used in theacquisition, e.g. the value 111⁻1, after which a new multiplication isperformed in the second multiplier block 41 between the guessed data andthe output signal of the integrator. The multiplication product is ledto the spectrum analyzing block 42 again, after which the search block43 analyzes the signal formed by the spectrum analyzing block 42. Atthis stage, the analysis performed at preceding acquisition times can becompared in the search block 43 to evaluate if the spectrum of thesignal obtained at this search time is better than the spectrum of thesignals formed at the preceding acquisition times. In this evaluation,it is possible to utilize the highest maximum of the signal formed ateach acquisition time, wherein preferably the highest of these maximaprimarily indicates the correct result.

After scanning through all the possible clock phases, the iterationblock 44 controls the guessed data block 40 to set the next bit patternin the guessed data and the first clock phase as the clock phase. Afterthis, the steps of multiplication, spectrum analysis and searching areperformed again, as presented above. These steps are iterated, until allthe possible bit combinations and clock phases with each bit combinationhave been scanned. At this stage, the search block 43 has informationabout the bit combination and clock phase which yielded the bestspectrum. On the other hand, the invention can also be applied bystoring the spectrum obtained with each bit combination and clock phase,and by analysing and comparing the stored spectra after scanning throughall the possible combinations. However, this latter alternative requiresconsiderably more memory space than the above-described alternative, inwhich only the highest maximum determined from the examined spectra isstored each time. The location of this highest maximum will now indicatewhich bit pattern is probably the correct one and also what is thecorrect clock phase. Thus, from this clock phase, it is also possible todetermine the deviation of the reference clock from the correct timeused in the satellites. FIGS. 4 a and 4 b show an example of the dataguesses to be applied in the method according to the invention and thespectrum results to be obtained by means of them. In FIG. 4 b, arrow 402indicates the best result to be obtained in the situation of thisexample, and in a corresponding manner, in FIG. 4 a, arrow 401 indicatesthe guessed data used to achieve this best result.

After performing the precision acquisition, the numerically controlledoscillator 5 is set to the correct frequency, and the reference codegenerator 34 is set to correspond to the code used by the satellite tobe received. After this, it is possible to start signal reception anddemodulation.

It is obvious that the guessed data block 40 can also perform the codegeneration in such a way that all the possible bit combinations arefirst generated with one clock phase, after which the clock phase ischanged and all the bit combinations are formed again with this clockphase, until all the combinations have been scanned.

With the above-presented method it is possible to further define thefrequency deviation of the received signal as well as the symbol clock.After acquisition in the acquisition block 6 or in another way, theremay still be a frequency deviation of some tens of hertzes by the effectof data modulation. The signal output from the integrator may thuscontain a signal similar to that shown in FIG. 3. The noise in thesignal does not correlate with the signal describing the frequencydeviation nor with the data modulation used in the signal. When thesignal output from the integrator is multiplied with a signalrepresenting the data used in the data modulation in bipolar format, theeffect of the data modulation is cancelled. This is due to the fact thatboth 1×1 and −1×−1 yield 1 as the product.

After this multiplication, the noise in the signal differs from theoriginal noise. However, the statistic and frequency spectrum propertiesof the signal remain substantially intact. Thus, the product of themultiplication is a complex signal describing the frequency deviationwhich is either positive or negative, depending on the signal phase.Furthermore, there is some noise in the signal.

The present invention can also be applied in such a way that theabove-described analysis by means of different clock phases of theguessed data is made as a part of the acquisition step to be performedin the acquisition block 6. Thus, it is possible to increase thecoherent integration time over the duration of one data bit.Consequently, the acquisition sensitivity will increase with a fewdecibels. The acquisition block 6 must thus be restarted for eachguessed data, or there are several copies of the acquisition block 6operating in parallel fashion, experimenting different guessed data inthe receiver.

After determining the correct frequency deviation and code phase, thereceiver can be set in a tracking mode. With the weakest signals, datareception will not be successful, but, in a way known as such, one mustturn to data obtained e.g. via a mobile communication network. Distancemeasuring is still possible with the reduced accuracy. In the selectionblock 9, the tracking mode is set by selecting, for the numericallycontrolled oscillator 5, a control value which substantially correspondsto the determined frequency deviation, and for the reference code of thereference code generator 34, a code phase which substantiallycorresponds to the determined code phase. Furthermore, by means of thesymbol clock determined by the precision acquisition block 33, the phaseof the clock signal used in the data demodulation can be initialized tobe substantially the same as the real phase of the data transmitted inthe received signal. This is preferably performed in a data clockreconstruction block 37. The received information is now led from theintegrator 36 to the loop filter 11, in which also a feedback is formed,e.g. for the continuous fine tuning of the frequency of the numericallycontrolled oscillator 5.

In the above-presented receiver, the converter block 2, the digitizingblock 3 and the acquisition block 6 may be common to all the receivingchannels, but there can be several integrators 36 for each channel, eventhough, for the sake of clarity, only one integrator and one receivingchannel are shown in FIG. 1.

It is obvious that the present invention is not limited solely to theabove-presented embodiments, but it can be modified within the scope ofthe appended claims.

1. A method for synchronizing a receiver with a transmitted signalmodulated with a spreading code and further modulated with informationto be transmitted, the method comprising: determining a frequency shiftof the transmitted signal and the symbol acquisition of the datatransmission, forming guessed data representing a guess of theinformation to be transmitted, multiplying the received signal with atleast two different values of said guessed data to form spectrumresults, determining the frequency shift on the basis of the spectrumresults formed with said different guessed data, and using thedetermined frequency shift to set an oscillator for synchronizing thereceiver.
 2. A method according to claim 1, wherein further at least twodifferent phase shifts are selected for the guessed data, wherein thespectrum results are computed for the different guessed data with eachphase shift of the guessed data.
 3. A method according to claim 1,wherein in each spectrum result, the highest maximum is searched for,and the highest maxima searched for in the different spectrum resultsare compared, wherein the frequency shift is determined on the basis ofthe highest maximum which is the greatest of said highest maxima.
 4. Amethod according to claim 1, which comprises a first acquisition step tofind out the rough frequency shift of the signal and the acquisition ofthe spreading code and a second acquisition step, in which the receivedsignal is multiplied with said guessed data, wherein the more precisefrequency shift and the symbol acquisition of the data transmission aredetermined on the basis of the formed spectrum results.
 5. A methodaccording to claim 1, wherein the received signal is multiplied withsaid guessed data after the rough frequency shift of the signal and theacquisition of the spreading code, wherein several different guesseddata are formed, and several determinations of the frequency shift andthe symbol acquisition of the data transmission are performed, one ofsaid several different guessed data being used in each.
 6. A receivercomprising acquisition means for acquisition of a signal modulated witha spreading code and further modulated with information to betransmitted, and determining means for determining the frequency shiftof the signal and the symbol acquisition of the data transmission, thereceiver also comprising means for generating guessed data representinga guess of the information to be transmitted, means for multiplying thereceived signal with at least two different values of said guessed datato form spectrum results, and means for determining the frequency shifton the basis of the spectrum results formed with said different guesseddata.
 7. A receiver according to claim 6, which comprises means forselecting at least two different phase shifts for the guessed data,wherein the spectrum results are arranged to be computed for thedifferent guessed data with each phase shift of the guessed data.
 8. Areceiver according to claim 6, which comprises means for searching forthe highest maximum in each spectrum result, and means for comparing thehighest maxima searched in different spectrum results, wherein thefrequency shift is arranged to be determined on the basis of the highestmaximum which is the highest of said highest maxima.
 9. A receiveraccording to claim 6, which comprises an acquisition block fordetermining the rough frequency shift of the signal and the acquisitionof the spreading code, and a precision acquisition block with means formultiplying the received signal with said guessed data and means fordetermining the further defined frequency shift and the symbolacquisition of the data transmission on the basis of the formed spectrumresults.
 10. A receiver according to claim 6, wherein the multiplicationof the received signal by said guessed data is arranged to be performedafter the acquisition of the rough frequency shift of the signal and thespreading code, wherein the receiver comprises means for generatingseveral different guessed data, and two or more acquisition blocks whichare each provided with means for determining the frequency shift and theacquisition of the spreading code by using one of said several differentguessed data.
 11. A wireless communication device comprising at leastone receiver which comprises acquisition means for acquisition of asignal modulated with a spreading code and further modulated withinformation to be transmitted, and determining means for determining thefrequency shift of the signal and the symbol acquisition of the datatransmission, the wireless communication device also comprising meansfor generating a guessed data representing a guess of the information tobe transmitted, means for multiplying the received signal by at leasttwo different values of said guessed data to form spectrum results, anddetermining means for determining the frequency shift on the basis ofthe spectrum results formed with said different guessed data.